Skip to content

chore: prepare release 20260817.03 #307

chore: prepare release 20260817.03

chore: prepare release 20260817.03 #307

Triggered via push August 17, 2026 06:11
Status Failure
Total duration 1h 8m 2s
Artifacts 2

release.yml

on: push
Matrix: provider-integration / provider-tests
Workflow Security
11s
Workflow Security
provider-integration  /  Provider E2E Scenarios
3m 56s
provider-integration / Provider E2E Scenarios
provider-integration  /  Cloud Sandbox Live E2E
7s
provider-integration / Cloud Sandbox Live E2E
provider-integration  /  OpenAI Live E2E
14m 30s
provider-integration / OpenAI Live E2E
provider-integration  /  Ollama Qwen Live E2E
16m 58s
provider-integration / Ollama Qwen Live E2E
Validate Tag Format
3s
Validate Tag Format
provider-integration  /  Integration Summary
2s
provider-integration / Integration Summary
Release Gates
5s
Release Gates
Matrix: build-appimage
Matrix: build-arch
Matrix: build-deb
Matrix: build-docker
Matrix: build-homebrew-binaries
Matrix: build-rpm
Build Snap
0s
Build Snap
Build macOS app
0s
Build macOS app
Build .exe (x86_64)
0s
Build .exe (x86_64)
Merge Docker manifest
0s
Merge Docker manifest
Upload release assets
0s
Upload release assets
Generate Release SBOM
0s
Generate Release SBOM
Update Homebrew tap
0s
Update Homebrew tap
Update deploy template tags
0s
Update deploy template tags
Fit to window
Zoom out
Zoom in

Annotations

17 errors, 38 warnings, and 2 notices
provider-integration / moonshot
Process completed with exit code 101.
provider-integration / fireworks
Process completed with exit code 101.
provider-integration / OpenAI Live E2E
Process completed with exit code 1.
[openai-live] › e2e/specs/openai-live.spec.js:18:2 › Live OpenAI provider › existing env can complete a real OpenAI chat turn: crates/web/ui/e2e/specs/openai-live.spec.js#L46
1) [openai-live] › e2e/specs/openai-live.spec.js:18:2 › Live OpenAI provider › existing env can complete a real OpenAI chat turn Error: expect(received).toContain(expected) // indexOf Expected substring: "OPENAI_LIVE_E2E_OK" Received string: "page-error:⚠️ErrorInvalid schema for function 'connectors': In context=(), 'oneOf' is not permitted.Provider: openai" Call Log: - Test timeout of 120000ms exceeded 44 | expect(String(sendResponse.payload?.runId || "")).not.toBe(""); 45 | > 46 | await expect | ^ 47 | .poll( 48 | async () => { 49 | const historyResponse = await sendRpcFromPage(page, "chat.history", { sessionKey: "main" }); at /home/runner/work/moltis/moltis/crates/web/ui/e2e/specs/openai-live.spec.js:46:3
provider-integration / Integration Summary
Process completed with exit code 1.
provider-integration / Integration Summary
OPENAI_LIVE_RESULT was failure
provider-integration / Integration Summary
PROVIDER_TESTS_RESULT was failure
E2E Tests
Process completed with exit code 1.
[default] › e2e/specs/sessions.spec.js:1142:2 › Session management › cron session shows archive and delete buttons in more controls: crates/web/ui/e2e/specs/sessions.spec.js#L1198
6) [default] › e2e/specs/sessions.spec.js:1142:2 › Session management › cron session shows archive and delete buttons in more controls Error: expect(received).toBe(expected) // Object.is equality Expected: 0 Received: 1 Call Log: - Timeout 15000ms exceeded while waiting on the predicate 1196 | // stalling the store update. Poll the store directly and force 1197 | // a refresh if the session lingers. > 1198 | await expect | ^ 1199 | .poll( 1200 | () => 1201 | page.evaluate(async (key) => { at /home/runner/work/moltis/moltis/crates/web/ui/e2e/specs/sessions.spec.js:1198:3
[default] › e2e/specs/sessions.spec.js:932:2 › Session management › deleting unmodified fork skips confirmation dialog: crates/web/ui/e2e/specs/sessions.spec.js#L959
5) [default] › e2e/specs/sessions.spec.js:932:2 › Session management › deleting unmodified fork skips confirmation dialog Error: expect(received).not.toBe(expected) // Object.is equality Expected: not "http://127.0.0.1:43757/chats/session/08d1560e-df9e-45a1-9fda-01efb4058322" Call Log: - Timeout 10000ms exceeded while waiting on the predicate 957 | // switchSession uses history.replaceState (no navigation event), 958 | // so poll the URL rather than using waitForURL which waits for "load". > 959 | await expect.poll(() => page.url(), { timeout: 10_000 }).not.toBe(forkSessionUrl); | ^ 960 | 961 | expect(pageErrors).toEqual([]); 962 | }); at /home/runner/work/moltis/moltis/crates/web/ui/e2e/specs/sessions.spec.js:959:3
[default] › e2e/specs/sessions.spec.js:866:2 › Session management › session search filters the list: crates/web/ui/e2e/specs/sessions.spec.js#L885
4) [default] › e2e/specs/sessions.spec.js:866:2 › Session management › session search filters the list Error: expect(received).toBeLessThanOrEqual(expected) Expected: <= 30 Received: 37 883 | 884 | const countAfter = await page.locator("#sessionList .session-item").count(); > 885 | expect(countAfter).toBeLessThanOrEqual(countBefore); | ^ 886 | 887 | // Clear search restores list 888 | await searchInput.fill(""); at /home/runner/work/moltis/moltis/crates/web/ui/e2e/specs/sessions.spec.js:885:23
[default] › e2e/specs/sessions.spec.js:530:2 › Session management › main session can be deleted and comes back empty: crates/web/ui/e2e/specs/sessions.spec.js#L548
3) [default] › e2e/specs/sessions.spec.js:530:2 › Session management › main session can be deleted and comes back empty Error: expect(received).not.toMatch(expected) Expected pattern: not /\/chats\/main$/ Received string: "http://127.0.0.1:43757/chats/main" Call Log: - Timeout 10000ms exceeded while waiting on the predicate 546 | // An empty main deletes without the confirmation dialog and hands the 547 | // view to another session. > 548 | await expect.poll(() => page.url(), { timeout: 10_000 }).not.toMatch(/\/chats\/main$/); | ^ 549 | await expect(mainItem).toHaveCount(0); 550 | await expect 551 | .poll(async () => { at /home/runner/work/moltis/moltis/crates/web/ui/e2e/specs/sessions.spec.js:548:3
[default] › e2e/specs/sessions.spec.js:82:2 › Session management › session list distinguishes date buckets and refreshes after midnight: crates/web/ui/e2e/specs/sessions.spec.js#L101
2) [default] › e2e/specs/sessions.spec.js:82:2 › Session management › session list distinguishes date buckets and refreshes after midnight Error: expect(locator).toBeVisible() failed Locator: locator('#sessionList .session-item[data-session-key="main"]') Expected: visible Timeout: 10000ms Error: element(s) not found Call log: - Expect "toBeVisible" with timeout 10000ms - waiting for locator('#sessionList .session-item[data-session-key="main"]') 99 | const pageErrors = await navigateAndWait(page, "/"); 100 | await waitForWsConnected(page); > 101 | await expect(page.locator('#sessionList .session-item[data-session-key="main"]')).toBeVisible(); | ^ 102 | await page.clock.pauseAt(new Date(2026, 6, 23, 23, 59, 59, 500)); 103 | 104 | const expected = await page.evaluate(() => { at /home/runner/work/moltis/moltis/crates/web/ui/e2e/specs/sessions.spec.js:101:85
[default] › e2e/specs/pwa-push.spec.js:1001:2 › push settings › worker revocation marker overrides stale page enabled intent: crates/web/ui/e2e/specs/pwa-push.spec.js#L1019
1) [default] › e2e/specs/pwa-push.spec.js:1001:2 › push settings › worker revocation marker overrides stale page enabled intent Error: expect(received).toBe(expected) // Object.is equality Expected: 1 Received: 0 Call Log: - Timeout 10000ms exceeded while waiting on the predicate 1017 | 1018 | await page.reload(); > 1019 | await expect.poll(() => page.evaluate(() => window.__moltisPushHarness.unsubscribeCount)).toBe(1); | ^ 1020 | expect(requests).toEqual([]); 1021 | }); 1022 | at /home/runner/work/moltis/moltis/crates/web/ui/e2e/specs/pwa-push.spec.js:1019:3
Release Gates
Process completed with exit code 1.
Release Gates
PROVIDER_RESULT was failure
Release Gates
E2E_RESULT was failure
provider-integration / Cloud Sandbox Live E2E
No usable cloud sandbox secrets are configured, skipping live cloud sandbox E2E
Biome
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Biome
Unexpected input(s) 'package-manager-cache', valid inputs are ['always-auth', 'node-version', 'node-version-file', 'architecture', 'check-latest', 'registry-url', 'scope', 'token', 'cache', 'cache-dependency-path', 'mirror', 'mirror-token']
lint/suspicious/noShadow: crates/web/ui/e2e/specs/chat-input.spec.js#L24
This variable shadows another variable with the same name in the outer scope.
lint/suspicious/noShadow: crates/web/ui/e2e/specs/chat-input.spec.js#L24
This variable shadows another variable with the same name in the outer scope.
lint/complexity/noExcessiveCognitiveComplexity: crates/web/ui/e2e/specs/channels-slack.spec.js#L23
Excessive complexity of 26 detected (max: 15).
lint/complexity/noExcessiveCognitiveComplexity: crates/web/ui/e2e/specs/auth.spec.js#L160
Excessive complexity of 16 detected (max: 15).
lint/complexity/noExcessiveCognitiveComplexity: crates/web/ui/e2e/specs/auth.spec.js#L324
Excessive complexity of 25 detected (max: 15).
lint/complexity/noExcessiveCognitiveComplexity: crates/web/ui/e2e/specs/auth.spec.js#L260
Excessive complexity of 16 detected (max: 15).
lint/complexity/noExcessiveCognitiveComplexity: crates/web/ui/e2e/specs/agents.spec.js#L120
Excessive complexity of 27 detected (max: 15).
lint/complexity/noExcessiveCognitiveComplexity: crates/web/ui/e2e/helpers.js#L85
Excessive complexity of 39 detected (max: 15).
lint/complexity/noExcessiveCognitiveComplexity: crates/web/ui/e2e/base-test.js#L11
Excessive complexity of 16 detected (max: 15).
Biome
Unexpected input(s) 'package-manager-cache', valid inputs are ['always-auth', 'node-version', 'node-version-file', 'architecture', 'check-latest', 'registry-url', 'scope', 'token', 'cache', 'cache-dependency-path', 'mirror', 'mirror-token']
provider-integration / Provider E2E Scenarios
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust***cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025***09***19***deprecation***of***node***20***on***github***actions***runners/
provider-integration / minimax
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / moonshot
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / fireworks
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / anthropic
anthropic live tests are temporarily ignored: configured account has insufficient credits.
provider-integration / OpenAI Live E2E
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830, actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020, actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02, Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / openai
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / nearai
Secret not configured — skipping tests
provider-integration / mistral
mistral live tests are temporarily ignored: configured account is currently rate limited by the provider.
provider-integration / openrouter
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / kimi-code
kimi-code live tests are temporarily ignored: configured account reports inactive membership/payment benefits.
provider-integration / Ollama Qwen Live E2E
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830, actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020, actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02, Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / Ollama Qwen Live E2E
Ollama Qwen live E2E is temporarily ignored: CI timed out waiting for a local model response after Ollama/model setup succeeded.
provider-integration / deepseek
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / gemini
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
provider-integration / zai
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E Tests
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020, actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E Tests
Unexpected input(s) 'package-manager-cache', valid inputs are ['always-auth', 'node-version', 'node-version-file', 'architecture', 'check-latest', 'registry-url', 'scope', 'token', 'cache', 'cache-dependency-path', 'mirror', 'mirror-token']
Clippy
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Clippy
Unexpected input(s) 'package-manager-cache', valid inputs are ['always-auth', 'node-version', 'node-version-file', 'architecture', 'check-latest', 'registry-url', 'scope', 'token', 'cache', 'cache-dependency-path', 'mirror', 'mirror-token']
Clippy
Unexpected input(s) 'package-manager-cache', valid inputs are ['always-auth', 'node-version', 'node-version-file', 'architecture', 'check-latest', 'registry-url', 'scope', 'token', 'cache', 'cache-dependency-path', 'mirror', 'mirror-token']
Test
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Test
Unexpected input(s) 'package-manager-cache', valid inputs are ['always-auth', 'node-version', 'node-version-file', 'architecture', 'check-latest', 'registry-url', 'scope', 'token', 'cache', 'cache-dependency-path', 'mirror', 'mirror-token']
Test
Unexpected input(s) 'package-manager-cache', valid inputs are ['always-auth', 'node-version', 'node-version-file', 'architecture', 'check-latest', 'registry-url', 'scope', 'token', 'cache', 'cache-dependency-path', 'mirror', 'mirror-token']
🎭 Playwright Run Summary
1 failed [openai-live] › e2e/specs/openai-live.spec.js:18:2 › Live OpenAI provider › existing env can complete a real OpenAI chat turn
🎭 Playwright Run Summary
6 failed [default] › e2e/specs/pwa-push.spec.js:1001:2 › push settings › worker revocation marker overrides stale page enabled intent [default] › e2e/specs/sessions.spec.js:82:2 › Session management › session list distinguishes date buckets and refreshes after midnight [default] › e2e/specs/sessions.spec.js:530:2 › Session management › main session can be deleted and comes back empty [default] › e2e/specs/sessions.spec.js:866:2 › Session management › session search filters the list [default] › e2e/specs/sessions.spec.js:932:2 › Session management › deleting unmodified fork skips confirmation dialog [default] › e2e/specs/sessions.spec.js:1142:2 › Session management › cron session shows archive and delete buttons in more controls 20 skipped 492 passed (17.4m)

Artifacts

Produced during runtime
Name Size Digest
e2e-test-results-32000660231-1 Expired
59.1 MB
sha256:9ab9146fcf55619e83a44d8da17d310158ab5232f48fbc04e5f56031f396b6b6
openai-live-e2e-32000660231-1 Expired
71.7 MB
sha256:49e7a2e67e9615302a2358b75da8e4a121ba8899b604379b946f5fd02bdb68e4