Skip to content

Instantly share code, notes, and snippets.

@sync
Last active November 4, 2026 04:58
Show Gist options
  • Select an option

  • Save sync/1210ddc6920f013dc90c27647781a98e to your computer and use it in GitHub Desktop.

Select an option

Save sync/1210ddc6920f013dc90c27647781a98e to your computer and use it in GitHub Desktop.
agent-device PR 4206 capture-owner validation at da8b7036
RUN v5.0.4 /private/tmp/agent-device-mask-owner-base-20261104
···xx···xx··xxxxx·························xx
⎯⎯⎯⎯⎯⎯ Failed Tests 11 ⎯⎯⎯⎯⎯⎯⎯
FAIL |unit-core| packages/contracts/src/screenshot-runtime.test.ts > a capture without a declared mask capability refuses before resolving its interactor
AssertionError: expected TypeError: Cannot read properties of unde… to match object { code: 'UNSUPPORTED_OPERATION', …(1) }
- Expected
+ Received
- {
- "code": "UNSUPPORTED_OPERATION",
- "details": {
- "reason": "screenshot-screen-mask-unsupported",
- },
+ TypeError {
+ "message": "Cannot read properties of undefined (reading 'screenshot')",
}
❯ packages/contracts/src/screenshot-runtime.test.ts:72:6
70| options: { screenMask: 'black' },
71| }),
72| ).rejects.toMatchObject({
| ^
73| code: 'UNSUPPORTED_OPERATION',
74| details: { reason: 'screenshot-screen-mask-unsupported' },
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/11]⎯
FAIL |unit-core| packages/contracts/src/screenshot-runtime.test.ts > a capture without a declared mask capability refuses before resolving its interactor
AssertionError: expected Error: --screen-mask requires local simct… { …(2) } to match object { code: 'UNSUPPORTED_OPERATION', …(1) }
(1 matching property omitted from actual)
- Expected
+ Received
- {
+ AppError {
"code": "UNSUPPORTED_OPERATION",
- "details": {
- "reason": "screenshot-screen-mask-unsupported",
- },
+ "details": undefined,
}
❯ packages/contracts/src/screenshot-runtime.test.ts:72:6
70| options: { screenMask: 'black' },
71| }),
72| ).rejects.toMatchObject({
| ^
73| code: 'UNSUPPORTED_OPERATION',
74| details: { reason: 'screenshot-screen-mask-unsupported' },
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[2/11]⎯
FAIL |unit-core| packages/platform-apple/src/screenshot-support.test.ts > the bound Apple capture declares mask support for {"platform":"apple","appleOs":"ios","id":"sim-1","name":"iPhone","kind":"simulator","booted":true} with {"captureBackend":"runner"}: false
FAIL |unit-core| packages/platform-apple/src/screenshot-support.test.ts > the bound Apple capture declares mask support for {"platform":"apple","appleOs":"ios","id":"sim-1","name":"iPhone","kind":"device","booted":true} with {}: false
FAIL |unit-core| packages/platform-apple/src/screenshot-support.test.ts > the bound Apple capture declares mask support for {"platform":"apple","appleOs":"macos","id":"sim-1","name":"iPhone","kind":"device","booted":true,"target":"desktop"} with {}: false
FAIL |unit-core| packages/platform-apple/src/screenshot-support.test.ts > the bound Apple capture declares mask support for {"platform":"apple","appleOs":"tvos","id":"sim-1","name":"iPhone","kind":"simulator","booted":true,"target":"tv"} with {}: false
FAIL |unit-core| packages/platform-apple/src/screenshot-support.test.ts > the bound Apple capture declares mask support for {"platform":"apple","appleOs":"visionos","id":"sim-1","name":"iPhone","kind":"simulator","booted":true} with {}: false
AssertionError: promise resolved "{ displayRotation: 'portrait' }" instead of rejecting
- Expected
+ Received
- Error {
- "message": "rejected promise",
+ {
+ "displayRotation": "portrait",
}
❯ packages/platform-apple/src/screenshot-support.test.ts:52:27
50| });
51| } else {
52| await expect(result).rejects.toMatchObject({
| ^
53| code: 'UNSUPPORTED_OPERATION',
54| details: { reason: 'screenshot-screen-mask-unsupported' },
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[3/11]⎯
FAIL |unit-core| packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts > direct Apple ios device captures refuse masks before native execution
FAIL |unit-core| packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts > direct Apple macos device captures refuse masks before native execution
AssertionError: promise resolved "undefined" instead of rejecting
- Expected:
Error {
"message": "rejected promise",
}
+ Received:
undefined
❯ packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts:81:4
79| await expect(
80| interactor.screenshot('/tmp/masked.png', { screenMask: 'black' }),
81| ).rejects.toMatchObject({
| ^
82| code: 'UNSUPPORTED_OPERATION',
83| details: { reason: 'screenshot-screen-mask-unsupported' },
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[4/11]⎯
FAIL |unit-core| packages/platform-apple/src/core/__tests__/screenshot.test.ts > screenshotIos refuses a masked device capture outside simctl before native execution
AssertionError: Expected values to be strictly deep-equal:
+ actual - expected
+ Comparison {}
- Comparison {
- code: 'UNSUPPORTED_OPERATION',
- details: {
- reason: 'screenshot-screen-mask-unsupported'
- }
- }
- Expected
+ Received
- {
- "code": "UNSUPPORTED_OPERATION",
- "details": {
- "reason": "screenshot-screen-mask-unsupported",
- },
+ Error {
+ "message": "unexpected runner capture",
}
❯ packages/platform-apple/src/core/__tests__/screenshot.test.ts:889:5
887| mockRunCmd.mockRejectedValue(new Error('unexpected native capture'…
888| mockRunAppleRunnerCommand.mockRejectedValue(new Error('unexpected …
889| await assert.rejects(
| ^
890| screenshotIos(device, '/tmp/masked.png', { env: {}, screenMask: …
891| {
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[5/11]⎯
FAIL |unit-core| packages/platform-apple/src/core/__tests__/screenshot.test.ts > screenshotIos refuses a masked device capture outside simctl before native execution
AssertionError: Expected values to be strictly deep-equal:
+ actual - expected
+ Comparison {}
- Comparison {
- code: 'UNSUPPORTED_OPERATION',
- details: {
- reason: 'screenshot-screen-mask-unsupported'
- }
- }
- Expected
+ Received
- {
- "code": "UNSUPPORTED_OPERATION",
- "details": {
- "reason": "screenshot-screen-mask-unsupported",
- },
+ Error {
+ "message": "unexpected native capture",
}
❯ packages/platform-apple/src/core/__tests__/screenshot.test.ts:889:5
887| mockRunCmd.mockRejectedValue(new Error('unexpected native capture'…
888| mockRunAppleRunnerCommand.mockRejectedValue(new Error('unexpected …
889| await assert.rejects(
| ^
890| screenshotIos(device, '/tmp/masked.png', { env: {}, screenMask: …
891| {
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[6/11]⎯
Test Files 4 failed (4)
Tests 11 failed | 33 passed (44)
Start at 14:05:38
Duration 1.35s (tests 47%, transform 31%, import 17%, setup 4%)
Head da8b7036d8874d7322e07026d50ab7c4a18b759f
Node24.13.0
pnpm check:command-docs: exit0
pnpm check:doc-prose: exit0
pnpm check:doc-links: exit0
These separate passes do not replace the failed affected gate.
RUN v5.0.4 /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask
············································
Test Files 4 passed (4)
Tests 44 passed (44)
Start at 14:21:33
Duration 1.24s (tests 56%, transform 22%, import 20%, setup 2%, worker 1%)
RUN v5.0.4 /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask
········································································································································································································································································································································································································································································································································································································································································································································································································································································································································································
Test Files 5 passed (5)
Tests 936 passed (936)
Start at 14:17:18
Duration 3.55s (tests 57%, import 33%, transform 9%, setup 1%)
SHA: 035c2b6cae0b5a2d6b769c36f63daa1e99f92420
Node24.13.0; command: pnpm run check:unit
Exit1; failure-summary excerpt:
⎯⎯⎯⎯⎯⎯⎯ Failed Tests 3 ⎯⎯⎯⎯⎯⎯⎯
FAIL |unit-core| packages/host-kit/src/code-signature.test.ts > a checkout named through a symlink stamps the same repository-relative labels
Error: Path is a directory: /private/tmp/agent-device-test-run-78958-O3CBLh/agent-device-signature-linked-workspace-CgOtYx-link
❯ packages/host-kit/src/code-signature.test.ts:101:8
99| ]);
100| } finally {
101| fs.rmSync(linkedRoot, { force: true });
| ^
102| fs.rmSync(root, { recursive: true, force: true });
103| }
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/3]⎯
FAIL |unit-core| packages/host-kit/src/code-signature.test.ts > an installed dependency is not followed into through a symlinked root
Error: Path is a directory: /private/tmp/agent-device-test-run-78958-O3CBLh/agent-device-signature-linked-installed-nIQG7L-link
❯ packages/host-kit/src/code-signature.test.ts:120:8
118| ]);
119| } finally {
120| fs.rmSync(linkedRoot, { force: true });
| ^
121| fs.rmSync(root, { recursive: true, force: true });
122| }
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[2/3]⎯
FAIL |unit-core| packages/platform-android/src/__tests__/fill-verification.test.ts > a value the app renders late still verifies, as long as it lands before the deadline
AssertionError: Expected values to be strictly equal:
false !== true
- Expected
+ Received
- true
+ false
❯ packages/platform-android/src/__tests__/fill-verification.test.ts:117:10
115| );
116|
117| assert.equal(verification.ok, true);
| ^
118| assert.equal(session.captureCount(), 8, 'six hint samples, then the …
119| });
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[3/3]⎯
Test Files 2 failed | 1918 passed (1920)
Tests 3 failed | 17173 passed | 1 skipped (17177)
Start at 14:18:15
Duration 163.67s (tests 64%, import 25%, transform 7%, setup 3%, worker 1%)
Slow-test gate: 3 test(s) over budget (within the 2x load-variance band, not failing):
4.46s (budget 2.5s) packages/platform-android/src/__tests__/snapshot-helper-exit-result.test.ts :: a sensitive value never reaches the instrumentation detail or the log wherever the helper printed it
4.03s (budget 2.5s) packages/provider-revyl/src/runtime.test.ts :: Revyl answers health with 503 until the worker attaches, and the start keeps polling
3.05s (budget 2.5s) packages/daemon-client/src/__tests__/daemon-client-startup-budget.test.ts :: a child gone at the deadline without an observed exit and no live startup fails exited
[ELIFECYCLE] Command failed with exit code 1.
[ELIFECYCLE] Command failed with exit code 1.
{
"version": 1,
"cwd": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask",
"startedAt": "2026-11-04T03:21:35.834Z",
"status": "failed",
"exitCode": 1,
"refs": {
"base": "origin/main",
"head": "da8b7036d8874d7322e07026d50ab7c4a18b759f",
"resolvedBase": "035c2b6cae0b5a2d6b769c36f63daa1e99f92420",
"resolvedHead": "da8b7036d8874d7322e07026d50ab7c4a18b759f",
"mergeBase": "035c2b6cae0b5a2d6b769c36f63daa1e99f92420"
},
"checkoutChanged": false,
"exactCommit": true,
"results": [
{
"id": "format",
"status": "passed",
"command": [
"pnpm",
"run",
"format:check"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/0.log",
"exitCode": 0,
"durationMs": 655,
"testReportPaths": [],
"tests": []
},
{
"id": "lint",
"status": "passed",
"command": [
"pnpm",
"run",
"lint"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/1.log",
"exitCode": 0,
"durationMs": 2198,
"testReportPaths": [],
"tests": []
},
{
"id": "typecheck",
"status": "passed",
"command": [
"pnpm",
"run",
"typecheck"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/2.log",
"exitCode": 0,
"durationMs": 523,
"testReportPaths": [],
"tests": []
},
{
"id": "test-app-typecheck",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Test App Build Cache / Resolve native fingerprint)"
},
{
"id": "test-app-security",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Test App Build Cache / Resolve native fingerprint)"
},
{
"id": "layering",
"status": "passed",
"command": [
"pnpm",
"run",
"check:layering"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/5.log",
"exitCode": 0,
"durationMs": 22195,
"testReportPaths": [],
"tests": []
},
{
"id": "di-seams",
"status": "passed",
"command": [
"pnpm",
"run",
"check:di-seams"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/6.log",
"exitCode": 0,
"durationMs": 1045,
"testReportPaths": [],
"tests": []
},
{
"id": "fallow",
"status": "passed",
"command": [
"pnpm",
"run",
"check:fallow",
"--base",
"035c2b6cae0b5a2d6b769c36f63daa1e99f92420"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/7.log",
"exitCode": 0,
"durationMs": 4670,
"testReportPaths": [],
"tests": []
},
{
"id": "native-dupes",
"status": "passed",
"command": [
"pnpm",
"run",
"check:native-dupes"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/8.log",
"exitCode": 0,
"durationMs": 419,
"testReportPaths": [],
"tests": []
},
{
"id": "native-dupes-model",
"status": "passed",
"command": [
"pnpm",
"run",
"check:native-dupes:test"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/9.log",
"exitCode": 0,
"durationMs": 2349,
"testReportPaths": [],
"tests": []
},
{
"id": "mcp-metadata",
"status": "passed",
"command": [
"pnpm",
"run",
"check:mcp-metadata"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/10.log",
"exitCode": 0,
"durationMs": 340,
"testReportPaths": [],
"tests": []
},
{
"id": "build",
"status": "passed",
"command": [
"pnpm",
"run",
"build"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/11.log",
"exitCode": 0,
"durationMs": 5602,
"testReportPaths": [],
"tests": []
},
{
"id": "package",
"status": "passed",
"command": [
"pnpm",
"run",
"check:package"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/12.log",
"exitCode": 0,
"durationMs": 6200,
"testReportPaths": [],
"tests": []
},
{
"id": "integration-node",
"status": "passed",
"command": [
"pnpm",
"run",
"test:integration:node"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/13.log",
"exitCode": 0,
"durationMs": 27065,
"testReportPaths": [],
"tests": []
},
{
"id": "macos-coverage",
"status": "passed",
"command": [
"pnpm",
"run",
"test:integration:macos-coverage"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/14.log",
"exitCode": 0,
"durationMs": 881,
"testReportPaths": [],
"tests": []
},
{
"id": "ios-snapshot-differential",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "vitest-related",
"status": "failed",
"command": [
"pnpm",
"exec",
"vitest",
"related",
"--run",
"--passWithNoTests",
"--project=!unit-core",
"--project=!fuzz-worker",
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"packages/command-runtime/src/commands/runtime-types.ts",
"packages/command-surface/src/capture/diff.ts",
"packages/command-surface/src/capture/index.test.ts",
"packages/command-surface/src/capture/screenshot-options.test.ts",
"packages/command-surface/src/capture/screenshot.ts",
"packages/contracts/src/backend.ts",
"packages/contracts/src/client-capture.ts",
"packages/contracts/src/facades/capture.ts",
"packages/contracts/src/interactor-types.ts",
"packages/contracts/src/screenshot-runtime.test.ts",
"packages/contracts/src/screenshot-runtime.ts",
"packages/contracts/src/screenshot.ts",
"packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"packages/daemon/src/execution/screenshot-runtime.ts",
"packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"packages/platform-apple/src/core/screenshot.ts",
"packages/platform-apple/src/interactor.ts",
"packages/platform-apple/src/runtime.ts",
"packages/platform-apple/src/screenshot-support.test.ts",
"packages/platform-apple/src/screenshot-support.ts",
"scripts/integration-progress-model.ts",
"src/cli/commands/__tests__/screenshot.test.ts",
"src/cli/commands/screenshot.ts",
"src/cli/parser/__tests__/args-parse-interaction.test.ts",
"website/docs/docs/commands.md"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/16.log",
"exitCode": 1,
"durationMs": 58035,
"testReportPaths": [
"/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-GYg0Fl/16.tests.4310.json"
],
"tests": [
{
"passed": 1256,
"failed": 4,
"skipped": 0,
"pending": 0,
"failedModules": 2,
"unhandledErrors": 0,
"failures": [
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts",
"test": "a certified symlink that starts escaping the cache root breaks reuse",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-4310-0YTZ4g/agent-device-runner-cache-eval-KVzTuK/Build/Products/Debug-iphonesimulator/Runner-Runner.app/Frameworks\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts:125:6\n at process.processTicksAndRejections (node:internal/process/task_queues:103:5)\n at async file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:20"
]
},
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts",
"test": "a symlink that changes target but stays inside the cache is a target change",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-4310-0YTZ4g/agent-device-runner-cache-eval-4XDKx9/Build/Products/Debug-iphonesimulator/Runner-Runner.app/Frameworks\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts:146:6\n at process.processTicksAndRejections (node:internal/process/task_queues:103:5)\n at async file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:20"
]
},
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts",
"test": "a symlinked product root that stays inside the cache is certified",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-4310-0YTZ4g/agent-device-runner-cache-symlink-inside-7qdc71/Build/Products/Debug-iphonesimulator/Runner-Runner.app\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts:208:6\n at process.processTicksAndRejections (node:internal/process/task_queues:103:5)\n at async file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:20"
]
},
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-toolchain-identity.test.ts",
"test": "a bundle swapped behind a stable selection path is read from the bundle now standing there",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-4310-0YTZ4g/xcode-stable-V3cLw8/Xcode.app\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-toolchain-identity.test.ts:121:6\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:1632:35\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:26\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:3334:20\n at new Promise (<anonymous>)\n at runWithCancel (file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:3329:10)\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:3314:20\n at new Promise (<anonymous>)\n at runWithTimeout (file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules"
]
}
],
"omittedFailures": 0
}
]
},
{
"id": "unit",
"status": "not-run"
},
{
"id": "unit-ci",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Coverage, Integration Tests)"
},
{
"id": "coverage",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Coverage)"
},
{
"id": "coverage-crap",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Coverage)"
},
{
"id": "provider-integration",
"status": "not-run"
},
{
"id": "integration-progress",
"status": "not-run"
},
{
"id": "swift-runner-ios",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests, Conformance Differential / iOS Conformance Differential, Perf Nightly / iOS Command Perf, XCTest Nightly / iOS Runner Full XCTest Suite (${{ matrix.leg.name }}))"
},
{
"id": "swift-runner-macos",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "android-helpers",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Android / Smoke Tests, Perf Nightly / Android Command Perf)"
},
{
"id": "macos-helper",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "web-smoke",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests, Integration Tests, Lint, Typecheck & Package, Perf Nightly / Android Command Perf, Perf Nightly / iOS Command Perf)"
},
{
"id": "replay-compat",
"status": "not-run"
},
{
"id": "daemon-wire-compat",
"status": "not-run"
},
{
"id": "affected-selector",
"status": "not-run"
},
{
"id": "gate-manifest",
"status": "not-run"
},
{
"id": "gate-manifest-model",
"status": "not-run"
},
{
"id": "depgraph",
"status": "not-run"
},
{
"id": "tmpdir-leaks",
"status": "not-run"
},
{
"id": "tmpdir-leaks-model",
"status": "not-run"
},
{
"id": "coverage-model",
"status": "not-run"
},
{
"id": "coverage-crap-model",
"status": "not-run"
},
{
"id": "wire-compat-model",
"status": "not-run"
},
{
"id": "production-exports",
"status": "not-run"
},
{
"id": "bundle-owner-files",
"status": "not-run"
},
{
"id": "freerange",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Repo Guards & Compatibility)"
},
{
"id": "fixture-cache",
"status": "not-run"
},
{
"id": "fixture-fallback",
"status": "not-run"
},
{
"id": "command-docs",
"status": "not-run"
},
{
"id": "capabilities-matrix",
"status": "not-run"
},
{
"id": "docs-links",
"status": "not-run"
},
{
"id": "docs-prose",
"status": "not-run"
},
{
"id": "agent-guidance",
"status": "not-run"
},
{
"id": "xctest-selection",
"status": "not-run"
},
{
"id": "packaged-runner-swift",
"status": "not-run"
},
{
"id": "maestro-conformance",
"status": "not-run"
},
{
"id": "maestro-differential",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Conformance Differential / iOS Conformance Differential)"
},
{
"id": "maestro-regenerate",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Conformance Regenerate Verify / Regenerate & Verify Fixtures)"
},
{
"id": "fuzz-parsers",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Replay Nightly / Parser Fuzz Lane)"
},
{
"id": "mutation",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Mutation Harness Canary / Mutants (${{ matrix.name }}), Mutation Weekly / Mutants (${{ matrix.name }}))"
},
{
"id": "mutation-affected",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Mutation Harness Canary / Select harness validation kernels)"
},
{
"id": "mutation-check",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Mutation Weekly / Mutation score report)"
},
{
"id": "mutation-model",
"status": "not-run"
},
{
"id": "concurrency-torture",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Concurrency Torture Nightly / Session/lease/lock torture sweep, Integration Tests)"
},
{
"id": "replay-ios",
"status": "skipped",
"reason": "parked, workflow_dispatch only (Replay Manual / iOS Replay Suite)"
},
{
"id": "replay-ios-device",
"status": "skipped",
"reason": "parked, workflow_dispatch only (Replay Manual / iOS Replay Suite)"
},
{
"id": "replay-macos",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "replay-linux",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Linux / Smoke Tests)"
},
{
"id": "linux-command-evidence",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Linux / Smoke Tests)"
},
{
"id": "replay-android",
"status": "skipped",
"reason": "parked, workflow_dispatch only (Replay Manual / Android Full Emulator Suite)"
}
],
"initial": {
"head": "da8b7036d8874d7322e07026d50ab7c4a18b759f",
"status": "",
"fingerprint": "710b9f8135251f0a8bf700155b55d1f555718239a570c0d2a77595d0fa14bae0"
},
"changedFiles": [
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"packages/command-runtime/src/commands/runtime-types.ts",
"packages/command-surface/src/capture/diff.ts",
"packages/command-surface/src/capture/index.test.ts",
"packages/command-surface/src/capture/screenshot-options.test.ts",
"packages/command-surface/src/capture/screenshot.ts",
"packages/contracts/src/backend.ts",
"packages/contracts/src/client-capture.ts",
"packages/contracts/src/facades/capture.ts",
"packages/contracts/src/interactor-types.ts",
"packages/contracts/src/screenshot-runtime.test.ts",
"packages/contracts/src/screenshot-runtime.ts",
"packages/contracts/src/screenshot.ts",
"packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"packages/daemon/src/execution/screenshot-runtime.ts",
"packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"packages/platform-apple/src/core/screenshot.ts",
"packages/platform-apple/src/interactor.ts",
"packages/platform-apple/src/runtime.ts",
"packages/platform-apple/src/screenshot-support.test.ts",
"packages/platform-apple/src/screenshot-support.ts",
"scripts/integration-progress-model.ts",
"src/cli/commands/__tests__/screenshot.test.ts",
"src/cli/commands/screenshot.ts",
"src/cli/parser/__tests__/args-parse-interaction.test.ts",
"website/docs/docs/commands.md"
],
"plan": {
"failOpen": true,
"checks": [
"format",
"lint",
"typecheck",
"test-app-typecheck",
"test-app-security",
"layering",
"di-seams",
"fallow",
"native-dupes",
"native-dupes-model",
"mcp-metadata",
"build",
"package",
"integration-node",
"macos-coverage",
"ios-snapshot-differential",
"vitest-related",
"unit",
"unit-ci",
"coverage",
"coverage-crap",
"provider-integration",
"integration-progress",
"swift-runner-ios",
"swift-runner-macos",
"android-helpers",
"macos-helper",
"web-smoke",
"replay-compat",
"daemon-wire-compat",
"affected-selector",
"gate-manifest",
"gate-manifest-model",
"depgraph",
"tmpdir-leaks",
"tmpdir-leaks-model",
"coverage-model",
"coverage-crap-model",
"wire-compat-model",
"production-exports",
"bundle-owner-files",
"freerange",
"fixture-cache",
"fixture-fallback",
"command-docs",
"capabilities-matrix",
"docs-links",
"docs-prose",
"agent-guidance",
"xctest-selection",
"packaged-runner-swift",
"maestro-conformance",
"maestro-differential",
"maestro-regenerate",
"fuzz-parsers",
"mutation",
"mutation-affected",
"mutation-check",
"mutation-model",
"concurrency-torture",
"replay-ios",
"replay-ios-device",
"replay-macos",
"replay-linux",
"linux-command-evidence",
"replay-android"
],
"reasons": [
{
"check": "format",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/backend.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/backend.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/backend.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/backend.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/client-capture.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/client-capture.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/client-capture.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers src/ and test/"
},
{
"check": "lint",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers the source tree"
},
{
"check": "typecheck",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes src/ and test/"
},
{
"check": "fallow",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "vitest-related",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers src/ and test/"
},
{
"check": "lint",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers the source tree"
},
{
"check": "typecheck",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes src/ and test/"
},
{
"check": "fallow",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:layering",
"detail": "layering guard reads production src/ modules"
},
{
"check": "build",
"path": "src/cli/commands/screenshot.ts",
"rule": "src-prod",
"detail": "production source is compiled by the build"
},
{
"check": "unit",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "vitest-related",
"path": "src/cli/commands/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "replay-ios",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers src/ and test/"
},
{
"check": "lint",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers the source tree"
},
{
"check": "typecheck",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes src/ and test/"
},
{
"check": "fallow",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "vitest-related",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "command-docs",
"path": "website/docs/docs/commands.md",
"rule": "own:command-docs",
"detail": "the command reference is asserted against the CLI in both directions"
},
{
"check": "docs-links",
"path": "website/docs/docs/commands.md",
"rule": "own:docs-links",
"detail": "internal docs links must land on an existing page and heading"
},
{
"check": "docs-prose",
"path": "website/docs/docs/commands.md",
"rule": "own:docs-prose",
"detail": "user docs avoid filler, marketing, and time-relative words"
}
],
"failOpenReasons": [
{
"path": "scripts/integration-progress-model.ts",
"rule": "workflow-tooling",
"detail": "workflow/tooling change can alter any gate"
}
],
"docsOnlyPaths": []
},
"final": {
"head": "da8b7036d8874d7322e07026d50ab7c4a18b759f",
"status": "",
"fingerprint": "710b9f8135251f0a8bf700155b55d1f555718239a570c0d2a77595d0fa14bae0"
},
"finishedAt": "2026-11-04T03:23:48.567Z"
}
{
"version": 1,
"cwd": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask",
"startedAt": "2026-11-04T04:55:56.998Z",
"status": "failed",
"exitCode": 1,
"refs": {
"base": "origin/main",
"head": "71739389ed2b21d7188d11a7055fdcea797e58cc",
"resolvedBase": "035c2b6cae0b5a2d6b769c36f63daa1e99f92420",
"resolvedHead": "71739389ed2b21d7188d11a7055fdcea797e58cc",
"mergeBase": "035c2b6cae0b5a2d6b769c36f63daa1e99f92420"
},
"checkoutChanged": false,
"exactCommit": true,
"results": [
{
"id": "format",
"status": "passed",
"command": [
"pnpm",
"run",
"format:check"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/0.log",
"exitCode": 0,
"durationMs": 623,
"testReportPaths": [],
"tests": []
},
{
"id": "lint",
"status": "passed",
"command": [
"pnpm",
"run",
"lint"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/1.log",
"exitCode": 0,
"durationMs": 2232,
"testReportPaths": [],
"tests": []
},
{
"id": "typecheck",
"status": "passed",
"command": [
"pnpm",
"run",
"typecheck"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/2.log",
"exitCode": 0,
"durationMs": 680,
"testReportPaths": [],
"tests": []
},
{
"id": "test-app-typecheck",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Test App Build Cache / Resolve native fingerprint)"
},
{
"id": "test-app-security",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Test App Build Cache / Resolve native fingerprint)"
},
{
"id": "layering",
"status": "passed",
"command": [
"pnpm",
"run",
"check:layering"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/5.log",
"exitCode": 0,
"durationMs": 22644,
"testReportPaths": [],
"tests": []
},
{
"id": "di-seams",
"status": "passed",
"command": [
"pnpm",
"run",
"check:di-seams"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/6.log",
"exitCode": 0,
"durationMs": 1039,
"testReportPaths": [],
"tests": []
},
{
"id": "fallow",
"status": "passed",
"command": [
"pnpm",
"run",
"check:fallow",
"--base",
"035c2b6cae0b5a2d6b769c36f63daa1e99f92420"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/7.log",
"exitCode": 0,
"durationMs": 5051,
"testReportPaths": [],
"tests": []
},
{
"id": "native-dupes",
"status": "passed",
"command": [
"pnpm",
"run",
"check:native-dupes"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/8.log",
"exitCode": 0,
"durationMs": 437,
"testReportPaths": [],
"tests": []
},
{
"id": "native-dupes-model",
"status": "passed",
"command": [
"pnpm",
"run",
"check:native-dupes:test"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/9.log",
"exitCode": 0,
"durationMs": 2702,
"testReportPaths": [],
"tests": []
},
{
"id": "mcp-metadata",
"status": "passed",
"command": [
"pnpm",
"run",
"check:mcp-metadata"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/10.log",
"exitCode": 0,
"durationMs": 328,
"testReportPaths": [],
"tests": []
},
{
"id": "build",
"status": "passed",
"command": [
"pnpm",
"run",
"build"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/11.log",
"exitCode": 0,
"durationMs": 5314,
"testReportPaths": [],
"tests": []
},
{
"id": "package",
"status": "passed",
"command": [
"pnpm",
"run",
"check:package"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/12.log",
"exitCode": 0,
"durationMs": 6944,
"testReportPaths": [],
"tests": []
},
{
"id": "integration-node",
"status": "passed",
"command": [
"pnpm",
"run",
"test:integration:node"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/13.log",
"exitCode": 0,
"durationMs": 27380,
"testReportPaths": [],
"tests": []
},
{
"id": "macos-coverage",
"status": "passed",
"command": [
"pnpm",
"run",
"test:integration:macos-coverage"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/14.log",
"exitCode": 0,
"durationMs": 885,
"testReportPaths": [],
"tests": []
},
{
"id": "ios-snapshot-differential",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "vitest-related",
"status": "failed",
"command": [
"pnpm",
"exec",
"vitest",
"related",
"--run",
"--passWithNoTests",
"--project=!unit-core",
"--project=!fuzz-worker",
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"packages/command-runtime/src/commands/runtime-types.ts",
"packages/command-surface/src/capture/diff.ts",
"packages/command-surface/src/capture/index.test.ts",
"packages/command-surface/src/capture/screenshot-options.test.ts",
"packages/command-surface/src/capture/screenshot.ts",
"packages/contracts/src/backend.ts",
"packages/contracts/src/client-capture.ts",
"packages/contracts/src/facades/capture.ts",
"packages/contracts/src/interactor-types.ts",
"packages/contracts/src/screenshot-runtime.test.ts",
"packages/contracts/src/screenshot-runtime.ts",
"packages/contracts/src/screenshot.ts",
"packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"packages/daemon/src/execution/screenshot-runtime.ts",
"packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"packages/platform-apple/src/core/screenshot.ts",
"packages/platform-apple/src/interactor.ts",
"packages/platform-apple/src/runtime.ts",
"packages/platform-apple/src/screenshot-support.test.ts",
"packages/platform-apple/src/screenshot-support.ts",
"scripts/integration-progress-model.ts",
"src/cli/commands/__tests__/screenshot.test.ts",
"src/cli/commands/screenshot.ts",
"src/cli/parser/__tests__/args-parse-interaction.test.ts",
"website/docs/docs/commands.md"
],
"logPath": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/16.log",
"exitCode": 1,
"durationMs": 58343,
"testReportPaths": [
"/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/.tmp/validation/run-I06TlJ/16.tests.21325.json"
],
"tests": [
{
"passed": 1256,
"failed": 4,
"skipped": 0,
"pending": 0,
"failedModules": 2,
"unhandledErrors": 0,
"failures": [
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts",
"test": "a certified symlink that starts escaping the cache root breaks reuse",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-21325-0CCf5B/agent-device-runner-cache-eval-Ze4UM3/Build/Products/Debug-iphonesimulator/Runner-Runner.app/Frameworks\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts:125:6\n at process.processTicksAndRejections (node:internal/process/task_queues:103:5)\n at async file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:20"
]
},
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts",
"test": "a symlink that changes target but stays inside the cache is a target change",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-21325-0CCf5B/agent-device-runner-cache-eval-hmihpn/Build/Products/Debug-iphonesimulator/Runner-Runner.app/Frameworks\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts:146:6\n at process.processTicksAndRejections (node:internal/process/task_queues:103:5)\n at async file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:20"
]
},
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts",
"test": "a symlinked product root that stays inside the cache is certified",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-21325-0CCf5B/agent-device-runner-cache-symlink-inside-4ITspa/Build/Products/Debug-iphonesimulator/Runner-Runner.app\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-artifact-manifest.test.ts:208:6\n at process.processTicksAndRejections (node:internal/process/task_queues:103:5)\n at async file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:20"
]
},
{
"kind": "test",
"file": "/Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-toolchain-identity.test.ts",
"test": "a bundle swapped behind a stable selection path is read from the bundle now standing there",
"errors": [
"Error: Path is a directory: /tmp/agent-device-test-run-21325-0CCf5B/xcode-stable-sr0vQ6/Xcode.app\n at Object.rmSync (node:fs:1235:18)\n at /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/packages/apple-runner/src/__tests__/runner-toolchain-identity.test.ts:121:6\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:1632:35\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:2794:26\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:3334:20\n at new Promise (<anonymous>)\n at runWithCancel (file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:3329:10)\n at file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_modules/vitest/dist/chunks/run.Cm2sd7-x.js:3314:20\n at new Promise (<anonymous>)\n at runWithTimeout (file:///Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask/node_modules/.pnpm/vitest@5.0.4_@types+node@22.20.1_@vitest+coverage-v8@5.0.4_vite@8.3.5_@types+node@22.20.1_yaml@2.9.0_/node_module"
]
}
],
"omittedFailures": 0
}
]
},
{
"id": "unit",
"status": "not-run"
},
{
"id": "unit-ci",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Coverage, Integration Tests)"
},
{
"id": "coverage",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Coverage)"
},
{
"id": "coverage-crap",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Coverage)"
},
{
"id": "provider-integration",
"status": "not-run"
},
{
"id": "integration-progress",
"status": "not-run"
},
{
"id": "swift-runner-ios",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests, Conformance Differential / iOS Conformance Differential, Perf Nightly / iOS Command Perf, XCTest Nightly / iOS Runner Full XCTest Suite (${{ matrix.leg.name }}))"
},
{
"id": "swift-runner-macos",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "android-helpers",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Android / Smoke Tests, Perf Nightly / Android Command Perf)"
},
{
"id": "macos-helper",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "web-smoke",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests, Integration Tests, Lint, Typecheck & Package, Perf Nightly / Android Command Perf, Perf Nightly / iOS Command Perf)"
},
{
"id": "replay-compat",
"status": "not-run"
},
{
"id": "daemon-wire-compat",
"status": "not-run"
},
{
"id": "affected-selector",
"status": "not-run"
},
{
"id": "gate-manifest",
"status": "not-run"
},
{
"id": "gate-manifest-model",
"status": "not-run"
},
{
"id": "depgraph",
"status": "not-run"
},
{
"id": "tmpdir-leaks",
"status": "not-run"
},
{
"id": "tmpdir-leaks-model",
"status": "not-run"
},
{
"id": "coverage-model",
"status": "not-run"
},
{
"id": "coverage-crap-model",
"status": "not-run"
},
{
"id": "wire-compat-model",
"status": "not-run"
},
{
"id": "production-exports",
"status": "not-run"
},
{
"id": "bundle-owner-files",
"status": "not-run"
},
{
"id": "freerange",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Repo Guards & Compatibility)"
},
{
"id": "fixture-cache",
"status": "not-run"
},
{
"id": "fixture-fallback",
"status": "not-run"
},
{
"id": "command-docs",
"status": "not-run"
},
{
"id": "capabilities-matrix",
"status": "not-run"
},
{
"id": "docs-links",
"status": "not-run"
},
{
"id": "docs-prose",
"status": "not-run"
},
{
"id": "agent-guidance",
"status": "not-run"
},
{
"id": "xctest-selection",
"status": "not-run"
},
{
"id": "packaged-runner-swift",
"status": "not-run"
},
{
"id": "maestro-conformance",
"status": "not-run"
},
{
"id": "maestro-differential",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Conformance Differential / iOS Conformance Differential)"
},
{
"id": "maestro-regenerate",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Conformance Regenerate Verify / Regenerate & Verify Fixtures)"
},
{
"id": "fuzz-parsers",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Replay Nightly / Parser Fuzz Lane)"
},
{
"id": "mutation",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Mutation Harness Canary / Mutants (${{ matrix.name }}), Mutation Weekly / Mutants (${{ matrix.name }}))"
},
{
"id": "mutation-affected",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Mutation Harness Canary / Select harness validation kernels)"
},
{
"id": "mutation-check",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Mutation Weekly / Mutation score report)"
},
{
"id": "mutation-model",
"status": "not-run"
},
{
"id": "concurrency-torture",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Concurrency Torture Nightly / Session/lease/lock torture sweep, Integration Tests)"
},
{
"id": "replay-ios",
"status": "skipped",
"reason": "parked, workflow_dispatch only (Replay Manual / iOS Replay Suite)"
},
{
"id": "replay-ios-device",
"status": "skipped",
"reason": "parked, workflow_dispatch only (Replay Manual / iOS Replay Suite)"
},
{
"id": "replay-macos",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Apple / Smoke Tests)"
},
{
"id": "replay-linux",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Linux / Smoke Tests)"
},
{
"id": "linux-command-evidence",
"status": "skipped",
"reason": "GitHub-authoritative (jobs: Linux / Smoke Tests)"
},
{
"id": "replay-android",
"status": "skipped",
"reason": "parked, workflow_dispatch only (Replay Manual / Android Full Emulator Suite)"
}
],
"initial": {
"head": "71739389ed2b21d7188d11a7055fdcea797e58cc",
"status": "",
"fingerprint": "76f623bef6c280e63691016a199ae6c503378e427f0e7fb57aac4946a5cbe321"
},
"changedFiles": [
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"packages/command-runtime/src/commands/runtime-types.ts",
"packages/command-surface/src/capture/diff.ts",
"packages/command-surface/src/capture/index.test.ts",
"packages/command-surface/src/capture/screenshot-options.test.ts",
"packages/command-surface/src/capture/screenshot.ts",
"packages/contracts/src/backend.ts",
"packages/contracts/src/client-capture.ts",
"packages/contracts/src/facades/capture.ts",
"packages/contracts/src/interactor-types.ts",
"packages/contracts/src/screenshot-runtime.test.ts",
"packages/contracts/src/screenshot-runtime.ts",
"packages/contracts/src/screenshot.ts",
"packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"packages/daemon/src/execution/screenshot-runtime.ts",
"packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"packages/platform-apple/src/core/screenshot.ts",
"packages/platform-apple/src/interactor.ts",
"packages/platform-apple/src/runtime.ts",
"packages/platform-apple/src/screenshot-support.test.ts",
"packages/platform-apple/src/screenshot-support.ts",
"scripts/integration-progress-model.ts",
"src/cli/commands/__tests__/screenshot.test.ts",
"src/cli/commands/screenshot.ts",
"src/cli/parser/__tests__/args-parse-interaction.test.ts",
"website/docs/docs/commands.md"
],
"plan": {
"failOpen": true,
"checks": [
"format",
"lint",
"typecheck",
"test-app-typecheck",
"test-app-security",
"layering",
"di-seams",
"fallow",
"native-dupes",
"native-dupes-model",
"mcp-metadata",
"build",
"package",
"integration-node",
"macos-coverage",
"ios-snapshot-differential",
"vitest-related",
"unit",
"unit-ci",
"coverage",
"coverage-crap",
"provider-integration",
"integration-progress",
"swift-runner-ios",
"swift-runner-macos",
"android-helpers",
"macos-helper",
"web-smoke",
"replay-compat",
"daemon-wire-compat",
"affected-selector",
"gate-manifest",
"gate-manifest-model",
"depgraph",
"tmpdir-leaks",
"tmpdir-leaks-model",
"coverage-model",
"coverage-crap-model",
"wire-compat-model",
"production-exports",
"bundle-owner-files",
"freerange",
"fixture-cache",
"fixture-fallback",
"command-docs",
"capabilities-matrix",
"docs-links",
"docs-prose",
"agent-guidance",
"xctest-selection",
"packaged-runner-swift",
"maestro-conformance",
"maestro-differential",
"maestro-regenerate",
"fuzz-parsers",
"mutation",
"mutation-affected",
"mutation-check",
"mutation-model",
"concurrency-torture",
"replay-ios",
"replay-ios-device",
"replay-macos",
"replay-linux",
"linux-command-evidence",
"replay-android"
],
"reasons": [
{
"check": "format",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-runtime/src/commands/capture/runtime/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-runtime/src/commands/runtime-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-surface/src/capture/diff.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/index.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/screenshot-options.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/command-surface/src/capture/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/backend.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/backend.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/backend.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/backend.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/backend.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/backend.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/client-capture.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/client-capture.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/client-capture.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/client-capture.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/client-capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/facades/capture.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/interactor-types.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/screenshot-runtime.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/contracts/src/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/contracts/src/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/contracts/src/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/contracts/src/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/contracts/src/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/daemon/src/execution/screenshot-runtime-execution.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "replay-ios",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "packages/daemon/src/execution/screenshot-runtime.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/__tests__/display-inventory.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/__tests__/screenshot.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/core/screenshot.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/interactor.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/runtime.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "unit",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/screenshot-support.test.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "format",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:format",
"detail": "oxfmt covers packages/"
},
{
"check": "lint",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:lint",
"detail": "oxlint covers packages/"
},
{
"check": "typecheck",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:typecheck",
"detail": "tsc includes packages/"
},
{
"check": "fallow",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "package-src",
"detail": "layering R11 guards workspace package boundaries"
},
{
"check": "vitest-related",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "build",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "package-src",
"detail": "package source is bundled into the published artifact"
},
{
"check": "unit",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "unit",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "platform-package-contract",
"detail": "platform packages must satisfy the shared runtime contract scenarios"
},
{
"check": "provider-integration",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "platform-package-provider",
"detail": "platform packages participate in provider-first ownership scenarios"
},
{
"check": "coverage",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "platform-package-coverage",
"detail": "platform package changes require affected contract coverage evidence"
},
{
"check": "replay-ios",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-ios-device",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "replay-macos",
"path": "packages/platform-apple/src/screenshot-support.ts",
"rule": "own:device-lane:apple",
"detail": "apple-owned tree: only the apple device lanes execute it"
},
{
"check": "format",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers src/ and test/"
},
{
"check": "lint",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers the source tree"
},
{
"check": "typecheck",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes src/ and test/"
},
{
"check": "fallow",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "vitest-related",
"path": "src/cli/commands/__tests__/screenshot.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "format",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:format",
"detail": "oxfmt covers src/ and test/"
},
{
"check": "lint",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:lint",
"detail": "oxlint covers the source tree"
},
{
"check": "typecheck",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:typecheck",
"detail": "tsc includes src/ and test/"
},
{
"check": "fallow",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "layering",
"path": "src/cli/commands/screenshot.ts",
"rule": "gate:layering",
"detail": "layering guard reads production src/ modules"
},
{
"check": "build",
"path": "src/cli/commands/screenshot.ts",
"rule": "src-prod",
"detail": "production source is compiled by the build"
},
{
"check": "unit",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:unit-text-gates",
"detail": "unit-suite gates read production sources as text, which the Vitest module graph cannot trace"
},
{
"check": "vitest-related",
"path": "src/cli/commands/screenshot.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "replay-ios",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-ios-device",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-macos",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-android",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "replay-linux",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "linux-command-evidence",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "web-smoke",
"path": "src/cli/commands/screenshot.ts",
"rule": "own:device-lane:shared",
"detail": "shared runtime surface: every device lane drives the CLI and daemon through it"
},
{
"check": "format",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:format",
"detail": "oxfmt covers src/ and test/"
},
{
"check": "lint",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:lint",
"detail": "oxlint covers the source tree"
},
{
"check": "typecheck",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:typecheck",
"detail": "tsc includes src/ and test/"
},
{
"check": "fallow",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "gate:fallow",
"detail": "fallow audits changed TypeScript for dead code"
},
{
"check": "vitest-related",
"path": "src/cli/parser/__tests__/args-parse-interaction.test.ts",
"rule": "vitest:related",
"detail": "Vitest resolves affected tests through its static module graph"
},
{
"check": "command-docs",
"path": "website/docs/docs/commands.md",
"rule": "own:command-docs",
"detail": "the command reference is asserted against the CLI in both directions"
},
{
"check": "docs-links",
"path": "website/docs/docs/commands.md",
"rule": "own:docs-links",
"detail": "internal docs links must land on an existing page and heading"
},
{
"check": "docs-prose",
"path": "website/docs/docs/commands.md",
"rule": "own:docs-prose",
"detail": "user docs avoid filler, marketing, and time-relative words"
}
],
"failOpenReasons": [
{
"path": "scripts/integration-progress-model.ts",
"rule": "workflow-tooling",
"detail": "workflow/tooling change can alter any gate"
}
],
"docsOnlyPaths": []
},
"final": {
"head": "71739389ed2b21d7188d11a7055fdcea797e58cc",
"status": "",
"fingerprint": "76f623bef6c280e63691016a199ae6c503378e427f0e7fb57aac4946a5cbe321"
},
"finishedAt": "2026-11-04T04:58:12.110Z"
}
RUN v5.0.4 /Users/anthonymittaz/.t3/worktrees/agent-device/feat-ios-simulator-screenshot-mask
··········································
Test Files 2 passed (2)
Tests 42 passed (42)
Start at 15:55:45
Duration 489ms (transform 60%, import 34%, setup 3%, tests 2%, worker 1%)

Head: 71739389ed2b21d7188d11a7055fdcea797e58cc. Changes since da8b7036d8874d7322e07026d50ab7c4a18b759f are one test assertion and one documentation sentence; production code is identical.

Node 24.13.0. pnpm format passed. Focused command pnpm exec vitest run --project unit-core packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts src/cli/parser/__tests__/args-parse-interaction.test.ts: 42 passed.

pnpm check:affected --run --head 71739389ed2b21d7188d11a7055fdcea797e58cc: failed, exactCommit true. Related tests 1256 passed/4 failed. Same four Apple-runner directory-symlink removal failures at runner-artifact-manifest.test.ts:125,146,208 and runner-toolchain-identity.test.ts:121, already reproduced on unchanged main 035c2b6cae0b5a2d6b769c36f63daa1e99f92420 in this gist. This is not a passing gate.

Separate pnpm check:doc-prose and pnpm check:doc-links passed. Live evidence remains attributed to da8b7036d8874d7322e07026d50ab7c4a18b759f.

SHA: 79104333c6e731fb61b54241774c6fee7f492f7b
Node24.13.0; command: pnpm run check:unit
Exit1; failure-summary excerpt:
⎯⎯⎯⎯⎯⎯⎯ Failed Tests 9 ⎯⎯⎯⎯⎯⎯⎯
FAIL |unit-core| scripts/__tests__/eager-closure-budgets.test.ts > packages/contracts/src/local-interactor… evaluates no more modules than at the merge-base
AssertionError: packages/contracts/src/local-interactor-operation-set.ts evaluates 26 modules on import; the merge-base evaluated 25. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits.
Newly evaluated module(s), each by shortest import route from the entry:
packages/contracts/src/local-interactor-operation-set.ts → packages/contracts/src/screenshot-runtime.ts → packages/contracts/src/screenshot.ts: expected 'packages/contracts/src/local-interact…' to be null
- Expected:
null
+ Received:
"packages/contracts/src/local-interactor-operation-set.ts evaluates 26 modules on import; the merge-base evaluated 25. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits."
❯ scripts/__tests__/eager-closure-budgets.test.ts:861:5
859| : `${finding}\n\nNewly evaluated module(s), each by shortest imp…
860| describeClosureGrowth(graph, base, entryPath, repoRoot),
861| ).toBeNull();
| ^
862| });
863|
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/9]⎯
FAIL |unit-core| scripts/__tests__/eager-closure-budgets.test.ts > packages/contracts/src/platform-runtime… evaluates no more modules than at the merge-base
AssertionError: packages/contracts/src/platform-runtime-unavailable.ts evaluates 29 modules on import; the merge-base evaluated 28. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits.
Newly evaluated module(s), each by shortest import route from the entry:
packages/contracts/src/platform-runtime-unavailable.ts → packages/contracts/src/screenshot-runtime.ts → packages/contracts/src/screenshot.ts: expected 'packages/contracts/src/platform-runti…' to be null
- Expected:
null
+ Received:
"packages/contracts/src/platform-runtime-unavailable.ts evaluates 29 modules on import; the merge-base evaluated 28. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits."
❯ scripts/__tests__/eager-closure-budgets.test.ts:861:5
859| : `${finding}\n\nNewly evaluated module(s), each by shortest imp…
860| describeClosureGrowth(graph, base, entryPath, repoRoot),
861| ).toBeNull();
| ^
862| });
863|
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[2/9]⎯
FAIL |unit-core| scripts/__tests__/eager-closure-budgets.test.ts > packages/contracts/src/screenshot-runti… evaluates no more modules than at the merge-base
AssertionError: packages/contracts/src/screenshot-runtime.ts evaluates 5 modules on import; the merge-base evaluated 4. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits.
Newly evaluated module(s), each by shortest import route from the entry:
packages/contracts/src/screenshot-runtime.ts → packages/contracts/src/screenshot.ts: expected 'packages/contracts/src/screenshot-run…' to be null
- Expected:
null
+ Received:
"packages/contracts/src/screenshot-runtime.ts evaluates 5 modules on import; the merge-base evaluated 4. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits."
❯ scripts/__tests__/eager-closure-budgets.test.ts:861:5
859| : `${finding}\n\nNewly evaluated module(s), each by shortest imp…
860| describeClosureGrowth(graph, base, entryPath, repoRoot),
861| ).toBeNull();
| ^
862| });
863|
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[3/9]⎯
FAIL |unit-core| scripts/__tests__/eager-closure-budgets.test.ts > src/platform-runtime.ts evaluates no more modules than at the merge-base
AssertionError: src/platform-runtime.ts evaluates 42 modules on import; the merge-base evaluated 41. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits.
Newly evaluated module(s), each by shortest import route from the entry:
src/platform-runtime.ts → src/platform-runtime-gateway.ts → packages/contracts/src/platform-runtime-unavailable.ts → packages/contracts/src/screenshot-runtime.ts → packages/contracts/src/screenshot.ts: expected 'src/platform-runtime.ts evaluates 42 …' to be null
- Expected:
null
+ Received:
"src/platform-runtime.ts evaluates 42 modules on import; the merge-base evaluated 41. It newly evaluates code the merge-base tree already had -- at that path, or in a source deleted since the merge-base -- which no split of existing code explains; shrinkage elsewhere cannot fund a new eager edge. It adds 40 top-level statement(s) of eager work beyond the merge-base closure. That means either a new static edge was added, or something that used to load on demand now loads eagerly. The fix is either to give the new code a home in a module the closure already evaluates, or to move the new edge behind a function-scoped `await import` -- see the added module(s) below for which one fits."
❯ scripts/__tests__/eager-closure-budgets.test.ts:861:5
859| : `${finding}\n\nNewly evaluated module(s), each by shortest imp…
860| describeClosureGrowth(graph, base, entryPath, repoRoot),
861| ).toBeNull();
| ^
862| });
863|
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[4/9]⎯
FAIL |unit-core| scripts/__tests__/eager-closure-budgets.test.ts > entries that grow by the same new module report shared merge-base homes once
AssertionError: More than one entry grew by the same new module -- see the shared homes below instead of chasing each entry's own diagnostic separately:
packages/contracts/src/screenshot.ts -- newly evaluated by packages/contracts/src/local-interactor-operation-set.ts (+1), packages/contracts/src/platform-runtime-unavailable.ts (+1), packages/contracts/src/screenshot-runtime.ts (+1), src/platform-runtime.ts (+1)
Entries that grew by packages/contracts/src/screenshot.ts already evaluate these modules at the merge-base (possible homes for a shared symbol; not a statement of ownership):
packages/contracts/src/interactor-operation-binding.ts
packages/contracts/src/screenshot-runtime.ts: expected 'packages/contracts/src/screenshot.ts …' to be null
- Expected:
null
+ Received:
"packages/contracts/src/screenshot.ts -- newly evaluated by packages/contracts/src/local-interactor-operation-set.ts (+1), packages/contracts/src/platform-runtime-unavailable.ts (+1), packages/contracts/src/screenshot-runtime.ts (+1), src/platform-runtime.ts (+1)
Entries that grew by packages/contracts/src/screenshot.ts already evaluate these modules at the merge-base (possible homes for a shared symbol; not a statement of ownership):
packages/contracts/src/interactor-operation-binding.ts
packages/contracts/src/screenshot-runtime.ts"
❯ scripts/__tests__/eager-closure-budgets.test.ts:885:5
883| : 'More than one entry grew by the same new module -- see the sh…
884| `of chasing each entry's own diagnostic separately:\n\n${sha…
885| ).toBeNull();
| ^
886| });
887|
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[5/9]⎯
FAIL |unit-core| packages/host-kit/src/code-signature.test.ts > a checkout named through a symlink stamps the same repository-relative labels
Error: Path is a directory: /private/tmp/agent-device-test-run-49744-LADhqQ/agent-device-signature-linked-workspace-8r9fPY-link
❯ packages/host-kit/src/code-signature.test.ts:101:8
99| ]);
100| } finally {
101| fs.rmSync(linkedRoot, { force: true });
| ^
102| fs.rmSync(root, { recursive: true, force: true });
103| }
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[6/9]⎯
FAIL |unit-core| packages/host-kit/src/code-signature.test.ts > an installed dependency is not followed into through a symlinked root
Error: Path is a directory: /private/tmp/agent-device-test-run-49744-LADhqQ/agent-device-signature-linked-installed-ih1yCN-link
❯ packages/host-kit/src/code-signature.test.ts:120:8
118| ]);
119| } finally {
120| fs.rmSync(linkedRoot, { force: true });
| ^
121| fs.rmSync(root, { recursive: true, force: true });
122| }
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[7/9]⎯
FAIL |unit-core| packages/platform-android/src/__tests__/fill-verification.test.ts > a value the app renders late still verifies, as long as it lands before the deadline
AssertionError: Expected values to be strictly equal:
false !== true
- Expected
+ Received
- true
+ false
❯ packages/platform-android/src/__tests__/fill-verification.test.ts:117:10
115| );
116|
117| assert.equal(verification.ok, true);
| ^
118| assert.equal(session.captureCount(), 8, 'six hint samples, then the …
119| });
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[8/9]⎯
FAIL |unit-core| packages/platform-android/src/__tests__/fill-verification.test.ts > a value that never lands is a mismatch read from the last sample
AssertionError: sampled until the deadline, took 1750 ms
- Expected
+ Received
- true
+ false
❯ packages/platform-android/src/__tests__/fill-verification.test.ts:143:10
141| assert.equal(verification.reason, 'text_mismatch');
142| assert.equal(verification.actual, `Key echo ${session.captureCount()…
143| assert.ok(
| ^
144| elapsedMs >= 1_500 && elapsedMs < 1_650,
145| `sampled until the deadline, took ${elapsedMs} ms`,
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[9/9]⎯
Test Files 3 failed | 1918 passed (1921)
Tests 9 failed | 17191 passed | 1 skipped (17201)
Start at 14:10:46
Duration 167.62s (tests 63%, import 26%, transform 7%, setup 3%, worker 1%)
Slow-test gate: 3 test(s) over budget (within the 2x load-variance band, not failing):
4.47s (budget 2.5s) packages/platform-android/src/__tests__/snapshot-helper-exit-result.test.ts :: a sensitive value never reaches the instrumentation detail or the log wherever the helper printed it
4.03s (budget 2.5s) packages/provider-revyl/src/runtime.test.ts :: Revyl answers health with 503 until the worker attaches, and the start keeps polling
3.05s (budget 2.5s) packages/daemon-client/src/__tests__/daemon-client-startup-budget.test.ts :: a child gone at the deadline without an observed exit and no live startup fails exited
[ELIFECYCLE] Command failed with exit code 1.
[ELIFECYCLE] Command failed with exit code 1.

Capture-owner mask support follow-up

Final head: da8b7036d8874d7322e07026d50ab7c4a18b759f. Capture-owner implementation head: 79104333c6e731fb61b54241774c6fee7f492f7b. Prior PR head: 0bbe8a6f1148daa7bb743c85d739c2c273d6946b. Upstream main: 035c2b6cae0b5a2d6b769c36f63daa1e99f92420.

Regression proof

Same command on prior head plus the four updated test files and on head:

fnm exec --using=24.13.0 pnpm exec vitest run --project unit-core packages/contracts/src/screenshot-runtime.test.ts packages/platform-apple/src/screenshot-support.test.ts packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts packages/platform-apple/src/core/__tests__/screenshot.test.ts

Prior head plus regression tests: 11 failed, 33 passed. Head: 44 passed. Disposable checkout installed with frozen lockfile and built before the experiment; removed afterward. The tests detect missing common capability refusal, selected Apple route refusal, and direct physical/macOS calls reaching native execution. The broader six-file focused run passed 66 tests. Format, lint/typecheck and build passed.

Live verification

Public-client black/default/black capture and live masked diff with mismatch-overlay inspection passed at final head da8b7036d8874d7322e07026d50ab7c4a18b759f. The verifier used the intended iPhone 12 mini/iOS 18.6 and a checkout-built daemon. The primary agent independently inspected the saved captures and checked all corner pixels and dimensions. The overlay retains the black outline; its top-left pixel is red because a ref annotation crosses the corner.

Commands, provenance, results, original images and pixel hashes.

Historical backend replay evidence remains attributed to 35fba700249f74fb3cd3752b3b536863c40ac0f3. The new public-route evidence above is tied to final head and does not rely on that replay.

Review dispositions

Michael's common binding capability request implemented; default unsupported; Apple declares handheld simctl support and refuses runner/physical/macOS routes. Removed daemon family admission and provider wrapper. Saved-current-image refusal remains in diff. Direct Apple and screenshotIos refusals share the same support assertion. Existing masked simctl flow rethrows before runner fallback.

tvOS and visionOS are explicitly outside the verified handheld mask scope; no claim is made that simctl masking fails natively on those platforms. The CLI diff, optional-path and assertion-only bot findings were declined by the maintainer and were not used to add redundant guards.

Exact-head affected gate and unchanged main comparison

fnm exec --using=24.13.0 pnpm check:affected --run --head 79104333c6e731fb61b54241774c6fee7f492f7b failed with exactCommit:true and an unchanged checkout. Node24.13.0 matches the repository CI default, with pinned pnpm11.17.0. The run passed format, lint, typecheck, layering, DI seams, Fallow, duplicate checks, MCP metadata, build, package, Node integration and macOS coverage, then stopped at related Vitest.

The identical related-test command from the receipt was run on a frozen-installed and built, otherwise unchanged upstream main checkout at 035c2b6cae0b5a2d6b769c36f63daa1e99f92420, under the same Node and pnpm versions with default workers and no competing test run. Both head and main had1256 passed and4 failed. All four failures match check, file, location and diagnostic: fs.rmSync returned Path is a directory for directory symlinks at runner-artifact-manifest.test.ts lines125,146,208 and runner-toolchain-identity.test.ts line121. Both full command logs and receipt are attached. This proves the current affected gate is blocked on unchanged main. The later selected gates were not run by that failed gate.

Exact related command:

fnm exec --using=24.13.0 pnpm exec vitest related --run --passWithNoTests --project=!unit-core --project=!fuzz-worker packages/command-runtime/src/commands/capture/runtime/diff-screenshot.test.ts packages/command-runtime/src/commands/capture/runtime/diff-screenshot.ts packages/command-runtime/src/commands/capture/runtime/screenshot.ts packages/command-runtime/src/commands/runtime-types.ts packages/command-surface/src/capture/diff.ts packages/command-surface/src/capture/index.test.ts packages/command-surface/src/capture/screenshot-options.test.ts packages/command-surface/src/capture/screenshot.ts packages/contracts/src/backend.ts packages/contracts/src/client-capture.ts packages/contracts/src/facades/capture.ts packages/contracts/src/interactor-types.ts packages/contracts/src/screenshot-runtime.test.ts packages/contracts/src/screenshot-runtime.ts packages/contracts/src/screenshot.ts packages/daemon/src/execution/screenshot-runtime-execution.test.ts packages/daemon/src/execution/screenshot-runtime.ts packages/platform-apple/src/__tests__/interactor-screenshot-backend.test.ts packages/platform-apple/src/core/__tests__/display-inventory.test.ts packages/platform-apple/src/core/__tests__/screenshot-simulator-capture.test.ts packages/platform-apple/src/core/__tests__/screenshot.test.ts packages/platform-apple/src/core/screenshot.ts packages/platform-apple/src/interactor.ts packages/platform-apple/src/runtime.ts packages/platform-apple/src/screenshot-support.test.ts packages/platform-apple/src/screenshot-support.ts scripts/integration-progress-model.ts src/cli/commands/__tests__/screenshot.test.ts src/cli/commands/screenshot.ts src/cli/parser/__tests__/args-parse-interaction.test.ts website/docs/docs/commands.md

Full unit diagnosis and final loading fix

The separate pnpm run check:unit run at79104333c under Node24.13.0 had17191passed,9failed,1skipped. Five failures detected an introduced eager import from screenshot-runtime.ts into the command metadata module. The final commit keeps that single reader in place but loads it on demand only for a mask; every caller awaits validation before native capture. The eager-loading guard plus four capture suites pass936tests at the final source. No budgets were increased or suppressed.

The other four unit failures were code-signature directory-symlink removal at lines101/120 and Android fill-verification assertions117/143. An unchanged-main comparison used the same fnm exec --using=24.13.0 pnpm run check:unit, after install/build/package preparation matching the head gate. It had17173passed,3failed,1skipped and reproduced both code-signature failures and Android117. Android143 did not fail on main; its cause remains unproven. The main comparison ran sequentially with default workers and no competing tests. The disposable main checkout was removed after saving evidence.

Current-head full unit success is not claimed. The exact affected gate stops at the independently reproduced Apple-runner failures, and the final changed loading behavior is covered by the focused eager-loading and capture tests.

Final receipt

The exact affected gate was rerun at final head da8b7036d8874d7322e07026d50ab7c4a18b759f. It failed at the same four Apple-runner symlink-removal cases, with1256passed/4failed and exactCommit:true. Its related-test command is byte-for-byte identical to the command compared on unchanged main above. Final receipt and failure excerpts replace the intermediate artifacts. The final four-file regression rerun passed44tests.

At final head, command docs, prose and links passed separately. These checks do not replace the failed affected gate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment