Skip to content

fix(files): resolve v2 file paths only on the v2 surface, through the canonical resolver #38010

fix(files): resolve v2 file paths only on the v2 surface, through the canonical resolver

fix(files): resolve v2 file paths only on the v2 surface, through the canonical resolver #38010

Triggered via pull request October 31, 2026 18:07
Status Cancelled
Total duration 5m 42s
Artifacts 24

ci.yml

on: pull_request
version
0s
version
desktop-changes
desktop-changes
trigger-upload
trigger-upload
Matrix: image-amd64
Matrix: image-arm64
Matrix: image-dev
docs-changes
docs-changes
migrate-dev  /  migrate
migrate-dev / migrate
Matrix: checks / integration
Matrix: checks / test
desktop-signing
desktop-signing
Matrix: checks / desktop-live
Matrix: checks / e2e-production
Matrix: checks / e2e
prerelease-create
prerelease-create
prerelease-build  /  build
prerelease-build / build
migrate  /  migrate
migrate / migrate
prerelease-publish
prerelease-publish
promote
0s
promote
prerelease-prune
0s
prerelease-prune
Matrix: ghcr
trigger-promote
0s
trigger-promote
docs  /  embeddings
docs / embeddings
attest-subjects
0s
attest-subjects
indexnow
0s
indexnow
Matrix: attest
release
0s
release
desktop-release  /  build
desktop-release / build
Fit to window
Zoom out
Zoom in

Annotations

68 errors and 89 warnings
checks / lint
Process completed with exit code 1.
check:openapi
audit failed — see the group above
error: Generated OpenAPI output is stale:: scripts/generate-openapi.ts#L59
Run bun run generate:openapi. at /home/runner/_work/sim/sim/scripts/generate-openapi.ts:59:13
check:cli-api
audit failed — see the group above
checks / lint
Process completed with exit code 1.
checks / test (1/2)
Process completed with exit code 1.
app/api/v2/files/[fileId]/metadata/route.test.ts > GET /api/v2/files/[fileId]/metadata > returns archived metadata when scope=archived opts into the archived set: apps/sim/app/api/v2/files/[fileId]/metadata/route.test.ts#L159
AssertionError: expected "vi.fn()" to be called with arguments: [ ObjectContaining{…} ] Received: 1st vi.fn() call: [ - ObjectContaining { + { "input": { + "acceptVfsPath": true, "assertedWorkspaceId": "workspace-1", "fileId": "wf_1", "includeDeleted": true, }, "principal": { "keyId": "key-1", "kind": "workspace_api_key", "workspaceId": "workspace-1", + }, + "request": NextRequest { + Symbol(internal request): { + "cookies": RequestCookies { + "_headers": Headers {}, + "_parsed": Map {}, + }, + "nextUrl": "http://localhost:3000/api/v2/files/wf_1/metadata?workspaceId=workspace-1&scope=archived", + "url": "http://localhost:3000/api/v2/files/wf_1/metadata?workspaceId=workspace-1&scope=archived", + }, }, }, ] Number of calls: 1 ❯ app/api/v2/files/[fileId]/metadata/route.test.ts:159:26
app/api/v2/files/[fileId]/metadata/route.test.ts > GET /api/v2/files/[fileId]/metadata > leaves an archived file unreachable under an explicit scope=active: apps/sim/app/api/v2/files/[fileId]/metadata/route.test.ts#L128
AssertionError: expected "vi.fn()" to be called with arguments: [ ObjectContaining{…} ] Received: 1st vi.fn() call: [ - ObjectContaining { + { "input": { + "acceptVfsPath": true, "assertedWorkspaceId": "workspace-1", "fileId": "wf_1", "includeDeleted": false, + }, + "principal": { + "keyId": "key-1", + "kind": "workspace_api_key", + "workspaceId": "workspace-1", + }, + "request": NextRequest { + Symbol(internal request): { + "cookies": RequestCookies { + "_headers": Headers {}, + "_parsed": Map {}, + }, + "nextUrl": "http://localhost:3000/api/v2/files/wf_1/metadata?workspaceId=workspace-1&scope=active", + "url": "http://localhost:3000/api/v2/files/wf_1/metadata?workspaceId=workspace-1&scope=active", + }, }, }, ] Number of calls: 1 ❯ app/api/v2/files/[fileId]/metadata/route.test.ts:128:26
app/api/v2/files/[fileId]/metadata/route.test.ts > GET /api/v2/files/[fileId]/metadata > leaves an archived file unreachable when scope is omitted: apps/sim/app/api/v2/files/[fileId]/metadata/route.test.ts#L114
AssertionError: expected "vi.fn()" to be called with arguments: [ ObjectContaining{…} ] Received: 1st vi.fn() call: [ - ObjectContaining { + { "input": { + "acceptVfsPath": true, "assertedWorkspaceId": "workspace-1", "fileId": "wf_1", "includeDeleted": false, + }, + "principal": { + "keyId": "key-1", + "kind": "workspace_api_key", + "workspaceId": "workspace-1", + }, + "request": NextRequest { + Symbol(internal request): { + "cookies": RequestCookies { + "_headers": Headers {}, + "_parsed": Map {}, + }, + "nextUrl": "http://localhost:3000/api/v2/files/wf_1/metadata?workspaceId=workspace-1", + "url": "http://localhost:3000/api/v2/files/wf_1/metadata?workspaceId=workspace-1", + }, }, }, ] Number of calls: 1 ❯ app/api/v2/files/[fileId]/metadata/route.test.ts:114:26
checks / test (1/2)
@sim/app#test: command (/home/runner/_work/sim/sim/apps/sim) /home/runner/.bun/bin/bun run test --shard=1/2 exited (1)
checks / integration (push, 8/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (push, 8/8)
The operation was canceled.
checks / build
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / build
The operation was canceled.
checks / integration (migrate, 4/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 4/8)
The operation was canceled.
checks / e2e (seo)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (seo)
The operation was canceled.
checks / e2e (stop-after)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (stop-after)
The operation was canceled.
checks / e2e (cli)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (cli)
The operation was canceled.
checks / integration (migrate, 2/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 2/8)
The operation was canceled.
checks / integration (push, 2/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (push, 2/8)
The operation was canceled.
checks / integration (migrate, 1/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 1/8)
The operation was canceled.
checks / integration (migrate, 7/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 7/8)
The operation was canceled.
checks / integration (migrate, 6/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 6/8)
The operation was canceled.
checks / integration (migrate, 8/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 8/8)
The operation was canceled.
checks / e2e (browser-extension)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (browser-extension)
The operation was canceled.
checks / e2e (project-files)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (project-files)
The operation was canceled.
checks / integration (push, 7/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (push, 7/8)
The operation was canceled.
checks / integration (push, 6/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (push, 6/8)
The operation was canceled.
checks / e2e (desktop-inbox)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (desktop-inbox)
The operation was canceled.
checks / integration (push, 4/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (push, 4/8)
The operation was canceled.
checks / integration (migrate, 3/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 3/8)
The operation was canceled.
checks / integration (migrate, 5/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (migrate, 5/8)
The operation was canceled.
checks / e2e (mobile, chromium, 2/2)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (mobile, chromium, 2/2)
The operation was canceled.
checks / e2e (mobile, webkit, 2/2)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (mobile, chromium, 1/2)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (mobile, webkit, 2/2)
The operation was canceled.
checks / e2e (mobile, chromium, 1/2)
The operation was canceled.
checks / e2e (mobile, webkit, 1/2)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / e2e (mobile, webkit, 1/2)
The operation was canceled.
checks / desktop-live (rest)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / desktop-live (lease-lapse)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / desktop-live (rest)
The operation was canceled.
checks / desktop-live (lease-lapse)
The operation was canceled.
checks / integration (push, 1/8)
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / integration (push, 1/8)
The operation was canceled.
checks / ci
Process completed with exit code 1.
checks / ci
Checks did not pass:
ci
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
ci
Canceling since a higher priority waiting request for ci-refs/pull/9531/merge exists
checks / lint
[git-mirror] Skipping cache commit: Found 2 failed/cancelled steps
checks / lint
[git-mirror] - Step: unknown (failed)
checks / lint
Skipping sticky disk commit due to previous step failures
checks / lint
- Step: unknown (failed)
checks / lint
Found 2 failed/cancelled steps in previous workflow steps
checks / lint
Skipping sticky disk commit due to previous step failures
checks / lint
- Step: unknown (failed)
checks / lint
Found 2 failed/cancelled steps in previous workflow steps
checks / lint
Skipping sticky disk commit due to previous step failures
checks / lint
- Step: unknown (failed)
checks / lint
Found 2 failed/cancelled steps in previous workflow steps
checks / test (1/2)
[git-mirror] Skipping cache commit: Found 2 failed/cancelled steps
checks / test (1/2)
Skipping sticky disk commit due to previous step failures
checks / test (1/2)
Found 2 failed/cancelled steps in previous workflow steps
checks / test (1/2)
Skipping sticky disk commit due to previous step failures
checks / test (1/2)
Found 2 failed/cancelled steps in previous workflow steps
checks / test (1/2)
Skipping sticky disk commit due to previous step failures
checks / test (1/2)
Found 2 failed/cancelled steps in previous workflow steps
checks / build
Skipping sticky disk commit due to previous step failures
checks / build
- Step: unknown (canceled)
checks / build
Found 2 failed/cancelled steps in previous workflow steps
checks / build
Skipping sticky disk commit due to previous step failures
checks / build
- Step: unknown (canceled)
checks / build
Found 2 failed/cancelled steps in previous workflow steps
checks / build
Skipping sticky disk commit due to previous step failures
checks / build
- Step: unknown (canceled)
checks / build
Found 2 failed/cancelled steps in previous workflow steps
checks / integration (migrate, 1/8)
No files were found with the provided path: packages/db/test-results/*.json apps/sim/test-results/*.json apps/realtime/test-results/*.json. No artifacts will be uploaded.
checks / e2e (mobile, chromium, 2/2)
Failed to cleanup and commit sticky disk at /home/runner/_work/sim/sim/node_modules: Error: Command failed: sudo umount -- /home/runner/_work/sim/sim/node_modules umount: /home/runner/_work/sim/sim/node_modules: target is busy.
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (9/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (8/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (7/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (6/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (5/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (4/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (3/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (2/10)...
checks / e2e (mobile, chromium, 2/2)
Unmount failed, retrying (1/10)...
checks / e2e (mobile, webkit, 2/2)
Failed to cleanup and commit sticky disk at /home/runner/_work/sim/sim/node_modules: Error: Command failed: sudo umount -- /home/runner/_work/sim/sim/node_modules umount: /home/runner/_work/sim/sim/node_modules: target is busy.
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (9/10)...
checks / e2e (mobile, chromium, 1/2)
Failed to cleanup and commit sticky disk at /home/runner/_work/sim/sim/node_modules: Error: Command failed: sudo umount -- /home/runner/_work/sim/sim/node_modules umount: /home/runner/_work/sim/sim/node_modules: target is busy.
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (8/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (9/10)...
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (7/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (8/10)...
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (6/10)...
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (5/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (7/10)...
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (4/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (6/10)...
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (3/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (5/10)...
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (2/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (4/10)...
checks / e2e (mobile, webkit, 2/2)
Unmount failed, retrying (1/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (3/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (2/10)...
checks / e2e (mobile, chromium, 1/2)
Unmount failed, retrying (1/10)...
checks / e2e (mobile, webkit, 1/2)
Failed to cleanup and commit sticky disk at /home/runner/_work/sim/sim/node_modules: Error: Command failed: sudo umount -- /home/runner/_work/sim/sim/node_modules umount: /home/runner/_work/sim/sim/node_modules: target is busy.
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (9/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (8/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (7/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (6/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (5/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (4/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (3/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (2/10)...
checks / e2e (mobile, webkit, 1/2)
Unmount failed, retrying (1/10)...
checks / desktop-live (rest)
Failed to cleanup and commit sticky disk at /home/runner/_work/sim/sim/node_modules: Error: Command failed: sudo umount -- /home/runner/_work/sim/sim/node_modules umount: /home/runner/_work/sim/sim/node_modules: target is busy.
checks / desktop-live (rest)
Unmount failed, retrying (9/10)...
checks / desktop-live (rest)
Unmount failed, retrying (8/10)...
checks / desktop-live (rest)
Unmount failed, retrying (7/10)...
checks / desktop-live (rest)
Unmount failed, retrying (6/10)...
checks / desktop-live (rest)
Unmount failed, retrying (5/10)...
checks / desktop-live (lease-lapse)
Failed to cleanup and commit sticky disk at /home/runner/_work/sim/sim/node_modules: Error: Command failed: sudo umount -- /home/runner/_work/sim/sim/node_modules umount: /home/runner/_work/sim/sim/node_modules: target is busy.
checks / desktop-live (rest)
Unmount failed, retrying (4/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (9/10)...
checks / desktop-live (rest)
Unmount failed, retrying (3/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (8/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (7/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (6/10)...
checks / desktop-live (rest)
Unmount failed, retrying (2/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (5/10)...
checks / desktop-live (rest)
Unmount failed, retrying (1/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (4/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (3/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (2/10)...
checks / desktop-live (lease-lapse)
Unmount failed, retrying (1/10)...
checks / integration (push, 1/8)
No files were found with the provided path: packages/db/test-results/*.json apps/sim/test-results/*.json apps/realtime/test-results/*.json. No artifacts will be uploaded.

Artifacts

Produced during runtime
Name Size Digest
ci-plan
988 Bytes
sha256:04709c518106934d717e1e981fbfe47477db0c9e2dcad3cd92b21b0fb27bb806
e2e-reports-browser-extension
110 KB
sha256:702a970ca8b1de574a7d281e9840d95349db3b6f30600652fb4cad872fa90e10
e2e-reports-cli
8.46 KB
sha256:4e949d396b6e9342824a71aa1a0205aea39761afd38f0daf8c2618f63728d80c
e2e-reports-desktop-inbox
1.11 KB
sha256:472b72abb834fad5384afac968cf3c849f08ccb4350c5eecb3c499ff323a2e81
e2e-reports-project-files
2.9 KB
sha256:eb441192628b98fdaaeced536b216733b5de3f7a4c539502acba2c3a2d1c1cba
e2e-reports-scim
3.72 KB
sha256:d20cd5973dece1ec0cb40b34881c2cf7e4b00ead27ffa886037f3a04ea43f695
e2e-reports-seo
5.46 KB
sha256:e802e29ee30395065164b95bb9babb9aff3bb0d4c6e7bb3ac86700cc3a37410b
e2e-reports-stop-after
2.36 KB
sha256:8a57c068237d77cc3965b2fe0cb42d3f234a6342b3e99c1062f0f67c7f54bfd5
integration-reports-migrate-2
688 Bytes
sha256:df4a00f08d7ed737af091de010798ce1852f27c0d9bacbcbcc3bc21f6237b5b2
integration-reports-migrate-3
1.64 KB
sha256:767d348cf42516e73378f94c12cfa80d1b5a3ed5f2880f5d1217dad8296d2bff
integration-reports-migrate-4
20.1 KB
sha256:58bdf24b5f688c9e53ad69d1e33a0d105242b73708433c1895de5e2adc809698
integration-reports-migrate-5
6.61 KB
sha256:bbbe054951b95719270593cee747943acecc712bedff6d04899e9b6799616eaa
integration-reports-migrate-6
981 Bytes
sha256:55587a42a033d438d3c095c0dd8e3556d98295895e52bb3596501bbb39fed18b
integration-reports-migrate-7
986 Bytes
sha256:1bb99e767d1ebe27eaf32aeda5f8890610d97019c7188d35b72292cc60d4daca
integration-reports-migrate-8
5.21 KB
sha256:cbc1fbd18b56077cc741c32a7b06b10307e9c1bd7016c6057280197e46aecd00
integration-reports-migrate-db
20 KB
sha256:c586a601fcf512462e73b44abe7319dca51520b33fd7c3dabe6ccfcc58baa591
integration-reports-push-2
690 Bytes
sha256:bb8fe43e3e08ff25a3961f1625acd1e3f0c1024a8c81b68b5ef2acbef4ea869d
integration-reports-push-3
23.2 KB
sha256:9bb832a517c753477f268875b8b7beaa15e0f09e9906774d2fbd417bc6e102b7
integration-reports-push-4
592 Bytes
sha256:c4cb52c2f6fc8b7f4a23038c667c07c36788a53c22369692ff763ea121cdc995
integration-reports-push-5
28 KB
sha256:33fd268e6a834894dfbccb9441358408a00dbe109f8c9916d2a1d38720166aaa
integration-reports-push-6
980 Bytes
sha256:13005628523386c41ff1b03496354632087ddd336f604ad1c5b0623f56a2c471
integration-reports-push-7
982 Bytes
sha256:9d70451ad198f8f88d570b6eb2c15836a70d431d0b5a331f9df14794d31e388f
integration-reports-push-8
27.2 KB
sha256:c58f9677f2c9c98ac7eb689b01f57ee45c961819962a601e04aebc30c771fc0b
integration-reports-push-db
21.7 KB
sha256:b653e2a99369810c6829f427d890d2c4165ce7f91bf1f776db9122f038229528